package br.com.cdto.entity;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.List;

import javax.persistence.CascadeType;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.OneToMany;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

@Entity
public class Doador extends Pessoa implements Serializable{
	private static final long serialVersionUID = 1L;
	
	private String RGCT;
	private String causaObito;
	private String endereco;
	@Temporal(TemporalType.TIMESTAMP)
	private Calendar dataInternacao;
	private String nomePai;
	private String nomeMae;
	private String religiao;
	private double peso;
	private double altura;
	private String tipoSanguineo;
	private String cor;
	private String historicoClinico;
	
	@OneToMany(cascade=CascadeType.ALL, fetch=FetchType.EAGER)
	private List<Exame> exames;

	public List<Exame> getExames() {
		if(exames == null){
			exames = new ArrayList<Exame>();
		}
		return exames;
	}

	public void setExames(List<Exame> exames) {
		this.exames = exames;
	}

	public String getRGCT() {
		return RGCT;
	}

	public void setRGCT(String rGCT) {
		RGCT = rGCT;
	}

	public String getCausaObito() {
		return causaObito;
	}

	public void setCausaObito(String causaObito) {
		this.causaObito = causaObito;
	}

	public String getEndereco() {
		return endereco;
	}

	public void setEndereco(String endereco) {
		this.endereco = endereco;
	}

	public Calendar getDataInternacao() {
		return dataInternacao;
	}

	public void setDataInternacao(Calendar dataInternacao) {
		this.dataInternacao = dataInternacao;
	}

	public String getNomePai() {
		return nomePai;
	}

	public void setNomePai(String nomePai) {
		this.nomePai = nomePai;
	}

	public String getNomeMae() {
		return nomeMae;
	}

	public void setNomeMae(String nomeMae) {
		this.nomeMae = nomeMae;
	}

	public String getReligiao() {
		return religiao;
	}

	public void setReligiao(String religiao) {
		this.religiao = religiao;
	}

	public double getPeso() {
		return peso;
	}

	public void setPeso(double peso) {
		this.peso = peso;
	}

	public double getAltura() {
		return altura;
	}

	public void setAltura(double altura) {
		this.altura = altura;
	}

	public String getTipoSanguineo() {
		return tipoSanguineo;
	}

	public void setTipoSanguineo(String tipoSanguineo) {
		this.tipoSanguineo = tipoSanguineo;
	}

	public String getCor() {
		return cor;
	}

	public void setCor(String cor) {
		this.cor = cor;
	}

	public String getHistoricoClinico() {
		return historicoClinico;
	}

	public void setHistoricoClinico(String historicoClinico) {
		this.historicoClinico = historicoClinico;
	}
}
